package com.project.shtp.service;

import com.project.shtp.pojo.web.vo.MyGoodsInfo;
import com.project.shtp.pojo.web.vo.OrderInquiry;

import com.project.shtp.pojo.web.dto.User;
import com.project.shtp.pojo.web.vo.HistoryBrowse;

import com.project.shtp.pojo.web.vo.UserAllMessage;
import com.project.shtp.pojo.web.vo.UserCollection;
import com.project.shtp.pojo.web.vo.UserOrderWithGoods;

import com.project.shtp.utils.CommonResult;
import org.springframework.stereotype.Service;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import com.project.shtp.pojo.web.dto.PersonalInfoDTO;
import org.springframework.web.multipart.MultipartFile;


import java.util.Map;

@Service
public interface UserService {
    public CommonResult<Map> verificationCode(String data, HttpServletRequest request, HttpServletResponse response);

    public CommonResult queryUserAllRole(Integer userId);

    public List<OrderInquiry> queryMyOrderForm(Integer userId, Integer statusId);

    public List<MyGoodsInfo> searchMyGoods(Integer userId);

    public List<User> queryFollower(Integer userId);

    public List<HistoryBrowse> queryUserBrowse(Integer userId);

    public List<User> queryUserFans(Integer userId);

    public int changeOrder(Integer orderId,Integer statusId);

    public CommonResult updatePersonalInfo(MultipartFile file, PersonalInfoDTO personalInfoDTO);

    public List<UserAllMessage> queryUserAllMessage(Integer userId);

    public List<UserCollection> queryUserCollection(Integer userId);

    public List<UserOrderWithGoods> queryOrderWithGoods(Integer userId);

   public Integer cancelTheOrder(Integer orderId);

}
